// 导入express框架
const express = require('express')
// 使用express框架的路由
const router = express.Router()
// 导入expreJoi
const expressJoi = require('@escook/express-joi')
// 导入login的路由处理模块
const userinfoHandler = require('../router_handle/userinfo')
// 导入验证规则
const {
	name_limit,
	email_limit,
	password_limit,
	forgetPassword_limit
} = require('../limit/user.js')
// 上传头像
router.post('/uploadAvatar',userinfoHandler.uploadAvatar)
// 绑定账号
router.post('/bindAccount',userinfoHandler.bindAccount)
// 获取用户信息
router.post('/getUserInfo',userinfoHandler.getUserInfo)
// 修改姓名
router.post('/changeName',expressJoi(name_limit),userinfoHandler.changeName)
// 修改性别
router.post('/changeSex',userinfoHandler.changeSex)
// 修改邮箱
router.post('/changeEmail',expressJoi(email_limit),userinfoHandler.changeEmail)
// 修改密码
router.post('/changePassword',expressJoi(password_limit),userinfoHandler.changePassword)
// 验证账号和邮箱
router.post('/verifyAccountAndEmail',userinfoHandler.verifyAccountAndEmail)
// 登录页修改密码
router.post('/changePasswordInLogin',expressJoi(forgetPassword_limit),userinfoHandler.changePasswordInLogin)
// --------- 用户管理
// 添加管理员
router.post('/createAdmin',userinfoHandler.createAdmin)
// 获取管理员列表
router.post('/getAdminList',userinfoHandler.getAdminList)
// 修改管理员
router.post('/editAdmin',userinfoHandler.editAdmin)
// 管理员降级
router.post('/changeIdentityToUser',userinfoHandler.changeIdentityToUser)
// 用户进行赋权
router.post('/changeIdentityToAdmin',userinfoHandler.changeIdentityToAdmin)
// 通过用户进行搜索
router.post('/searchUser',userinfoHandler.searchUser)
// 冻结用户
router.post('/banUser',userinfoHandler.banUser)
// 解冻用户
router.post('/hotUser',userinfoHandler.hotUser)
// 获取冻结列表
router.post('/getBanList',userinfoHandler.getBanList)
// 删除用户
router.post('/deleteUser',userinfoHandler.deleteUser)
// 向外暴露路由
module.exports = router 